#!/bin/sh

# Exit with status 0 if a supported version of libpthread is found (NPTL or
# non-Linux libpthread) and exit with status 1 if a non-supported version of
# libpthread is found (LinuxThreads).

if [ "$(uname)" = "Linux" ]; then
  if [ ! -x /usr/bin/getconf ]; then
    echo "Error: could not find the program /usr/bin/getconf."
    echo "Please install the glibc-common package."
    # Assume NPTL.
    exit 0
  fi
  libpthread_version="$(/usr/bin/getconf GNU_LIBPTHREAD_VERSION 2>/dev/null)"
  if [ "${libpthread_version#NPTL}" != "${libpthread_version}" ]; then
    # NPTL
    exit 0
  fi
  if [ -x /lib/ld-musl-*.so.1 ] ; then
    # musl
    exit 0
  fi
  # configuration string is empty or does start with "linuxthreads".
  exit 1
fi

# Another OS than Linux, which is also fine.
exit 0
